# -*- codeing = utf-8 -*-
# @Time : 2021/2/25 12:59
# @Atuthor: 朱朱
# @File: 083高阶函数.py
# @Software: PyCharm
""
"""
# 1. 一个函数作为另一个函数的参数
# 2. 一个函数作为另一个函数的返回值
# 3. 函数内部再定义一个函数
"""
def foo():
    print('我是foo,我被调用了')
    return 'foo'

def bar():
    print('我是bar,我被调用了')
    return foo

# foo() # 我是foo,我被调用了
# re_foo = foo() # 我是foo,我被调用了
# print(re_foo) # foo

# bar() # 我是bar,我被调用了
# re_bar = bar()  # 我是bar,我被调用了
# print(re_bar) # <function foo at 0x00000298290474C8>
# 这里是返回的foo函数,要想取得返回值需要再加一个(),即bar()()
print(type(bar())) # <class 'function'>

rs_bar=bar()() # 我是bar,我被调用了 # 我是foo,我被调用了
print(rs_bar) # foo
print(type(rs_bar)) # <class 'str'>



